接下來來講 Proxmox VE 裡內建的備份功能與高可用性的部分
我們會實際操作看看備份,但高可用性的部分,因為會需要數台機器,而我們只使用一臺機器裝 Proxmox VE,所以在這裡沒辦法實際操作
介紹完,如果有興趣的朋友就再麻煩自己找機器來測試了
我們先來講備份吧,在 Proxmox VE 裡,備份有三種模式
而這三種模式在備份 VM 與備份容器時有不同的行為
在備份 VM 時
而在備份容器時
在上面可以看到要 Uptime 和要備份完整性的 trade-off,好像沒有一個方法可以單純利用 Proxmox VE 同時兼顧到極低 downtime 與備份完整性
在 Proxmox VE 裡,預設建立的 local
可以用來備份,不過在利用系統硬碟備份時,同時要記得考量到,因為備份是個 IO 量相對大的工作,在系統碟上進行大量 IO 時可能會對系統內其他服務,甚至其他 VM/CT 的效能造成影響。
比較理想的方式是,另外找一個硬碟或數個硬碟,甚至是利用 NFS/Samba 來進行備份
昨天我們有建立一個 VM,我們現在就來試看看備份這個 VM
可以在左邊的選單裡看到 Backup
的選項,點進去後會看到這樣的畫面
這是這個 VM 目前擁有的備份,不過由於我們還沒備份過這個 VM,所以現在是空的
在左上角有個 Backup Now
,點下去會看到這樣的選單
我們可以在這裡選擇
由於我們現在只有 local
能用來備份,所以我們就備份的儲存空間就選擇 local
。而備份的模式,我們這裡示範最安全的 Stop
。壓縮算法的部分選擇 ZSTD
,這是一個近期新增進 Proxmox VE 的壓縮演算法,能充分利用多執行續的特性,進而提高備份速度與降低備份時間。 Email 部分則留白
選擇完備份相關的設定後,我們點 Backup
,應該會看到這樣的畫面
可以看到 VM 被停止與被啟動的訊息,回到 Summary 的頁面的時候也能觀察到 VM 的 Uptime 被重設了,即便現在是在備份,但我們仍然能保持我們的 VM 執行狀態
備份需要點時間,備份完成後就能在 Backup 的頁面看到你的備份,如下圖
備份完後,我們也可以利用這個備份來還原機器。
首先,跟操作容器一樣,我們把這個 VM 刪掉。接下來,點開 local
,應該會在儲存的檔案看到這樣的畫面
可以在裡面看到我們剛才的備份,我們點一下這個備份後,上面的 Restore
按鈕就變成可以壓的狀態了
點下去後會看到這個畫面
在這個畫面,你可以設定
在這裡我們用預設值就可以順利還原了,不過如果今天是從其他地方還原 VM/CT 到這個系統上的話,可能有些地方需要注意,例如要使用的儲存、是否要重設 MAC address...等等
點 Restore
以後會看到這個畫面
等到這個還原工作跑完後,我們的 VM 就又重新出現了
除了手動備份以外,你也可以在 Proxmox VE 裡設定排程備份
在最左手邊的列表內選擇 Datacenter
,裡面有個 Backup
的選項,點開後畫面如下
我們可以在這裡設定排程備份,點上面的 Add
以新增排程備份
在這裡我們可以設定
如果今天有非常多 VM/CT,我們可以在這裡設定定時備份,可以省很多時間
備份的部分大概就這樣,那接下來簡單介紹一下高可用性
在 Proxmox VE 裡,如果想要使用到高可用性的功能的話,得先滿足這幾個條件
在 Proxmox VE 的 Datacenter 選項裡有個 HA
,這部分就是讓你可以設定高可用性的選單,你可以在這裡設定哪些 VM/CT 需要列入高可用性的列表內,哪些節點要用來跑這些服務,以及整個 Cluster 的狀態...等資訊
在滿足 Proxmox VE 的高可用性的需求的節點內,如果要將 VM/CT 設定進 HA 的話,可以在 HA 的選單裡加入。一旦將 VM/CT 加入 HA 列表後, VM/CT 的狀態將不再由機器管理,而是透過 HA 頁面管理
在 HA 的 Resources 裡,每個 VM/CT 都具有 started,stopped,ignored 和 disabled 四個選項,而一般會使用到的就是 started & stopped 兩個狀態
若今天 HA 列表裡的 VM/CT 的狀態與要求的狀態不符合的時候, Proxmox VE 將會嘗試更改 VM/CT 的狀態,而當執行 VM/CT 的節點發生異常狀態時, Proxmox VE 會將 VM/CT 嘗試搬移到其他節點上,並在其他節點上嘗試執行 VM/CT,以此達成高可用性
由於這部分需要較多機器,故在此無法實際示範,只能簡單用文字說明一下怎麽運作的,如果有興趣的話可能就需要自己找機器來試看看 HA 的功能了
明天講 cloud-init 的部分